home *** CD-ROM | disk | FTP | other *** search
/ IRIX Development Foundation 1.1 for IRIX 6.4 / SGI IRIX 6.4 Development Foundation 1.1.iso / relnotes / patchSG0002835 / ch1.z / ch1
Text File  |  1998-03-26  |  10KB  |  331 lines

  1.  
  2.  
  3.  
  4.                                   - 1 -
  5.  
  6.  
  7.  
  8.        1.  _P_a_t_c_h__S_G_0_0_0_2_8_3_5__R_e_l_e_a_s_e__N_o_t_e
  9.  
  10.        This release note describes patch SG0002835 to IRIX 6.4.
  11.  
  12.        Patch SG0002835 replaces patches SG0002648, SG0002294 &
  13.        SG0001820.
  14.  
  15.        1.1  _S_u_p_p_o_r_t_e_d__H_a_r_d_w_a_r_e__P_l_a_t_f_o_r_m_s
  16.  
  17.        This patch contains bug fixes for IP27 & IP30 systems.
  18.  
  19.  
  20.        1.2  _S_u_p_p_o_r_t_e_d__S_o_f_t_w_a_r_e__P_l_a_t_f_o_r_m_s
  21.  
  22.        This patch contains bug fixes for Specfs on a system running
  23.        IRIX 6.4.  The software cannot be installed on other
  24.        configurations.
  25.  
  26.        1.3  _B_u_g_s__F_i_x_e_d__b_y__P_a_t_c_h__S_G_0_0_0_2_8_3_5
  27.  
  28.        This patch contains fixes for the following bugs in IRIX
  29.        6.4.  Bug numbers from Silicon Graphics bug tracking system
  30.        are included for reference.
  31.  
  32.        Patch 2835 fixes bugs:
  33.  
  34.                +o 558439: A "memory deadlock" fix that was
  35.                  introduced into Patch 2648 exposed another
  36.                  problem.  When the "sget" routine can not complete
  37.                  the construction of a "local" snode because
  38.                  another thread of control is also in the midst of
  39.                  constructing the "common" snode for the same
  40.                  device, the "sget" routine drops its locks, and
  41.                  re-executes the loop.  Previously the "sget"
  42.                  routine would block on the global hash-chain lock,
  43.                  but now that the memory deadlock problem has been
  44.                  fixed, the global hash-chain lock is available,
  45.                  and on single cpu systems, the "sget" routine may
  46.                  loop indefinitely waiting on the completion of the
  47.                  construction of the "common" snode, which will
  48.                  never finish if the thread constructing the
  49.                  "common" snode had been interrupted in a state
  50.                  where it was not holding the global hash-chain
  51.                  lock.  The solution is to add a small "delay" just
  52.                  before re-executing the "sget" loop, allowing the
  53.                  interrupted thread constructing the "common" snode
  54.                  to complete.  The most common manifestation of
  55.                  this problem happened on a single-cpu Octane
  56.                  playing one track of an audio CD repeatedly while
  57.                  having the "apanel" open.  This produces an
  58.                  interrupt-rich environment with two threads of
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.                                   - 2 -
  71.  
  72.  
  73.  
  74.                  control (cdplayer & apanel) attempting to access
  75.                  the same "special" device.
  76.  
  77.                +o 560229: Some of the xlv commands are "sensitive"
  78.                  to getting an error code returned to an fsync()
  79.                  request.  Fixing bug 543184 was when this started
  80.                  to happen.  Temporarily unfix just the fsync()
  81.                  part of bug 543184, the rest will still work okay,
  82.                  and this will allow things like xlv_make to work
  83.                  again.
  84.  
  85.        Replaces and rolls up:
  86.  
  87.          Patch 2648, which fixes bugs:
  88.  
  89.               +o 448776: A problem in the interaction of spec_get &
  90.                 spec_inactive could result in a released vnode
  91.                 being obtained by the spec_get routine.  In this
  92.                 case a panic in spec_open() occurred.
  93.  
  94.               +o 508734: When a "get attribute" request provided a
  95.                 zero buffer length a kernel panic could occur due
  96.                 to missing "sanity" checking.
  97.  
  98.               +o 518212: A problem in the interaction of spec_get &
  99.                 spec_inactive could result in a released vnode
  100.                 being obtained by the spec_get routine.  In this
  101.                 case a panic in spec_access() occurred.
  102.  
  103.               +o 524849: A problem in the interaction of spec_get &
  104.                 spec_inactive could result in a released vnode
  105.                 being obtained by the spec_get routine.  In this
  106.                 case a panic in sget() occurred.
  107.  
  108.               +o 531599: A problem in the interaction of spec_get &
  109.                 spec_inactive could result in a released vnode
  110.                 being obtained by the spec_get routine.  In this
  111.                 case a invalid snode caused the appearance that the
  112.                 open counts had gone negative.
  113.  
  114.               +o 538378: A problem in the interaction of spec_get &
  115.                 spec_inactive could result in a released vnode
  116.                 being obtained by the spec_get routine.  In this
  117.                 case a panic in slock() called out of spec_close()
  118.                 occurred.
  119.  
  120.               +o 543184: When a "special" file (such as a character
  121.                 device) was served by nfs2 as an underlying file
  122.                 system, "get attribute" requests that failed did
  123.                 not pass the error up through specfs, causing
  124.                 garbage output from "ls", or sometimes causing a
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.                                   - 3 -
  137.  
  138.  
  139.  
  140.                 kernel panic.
  141.  
  142.        Replaces and rolls up:
  143.  
  144.          Patch 2294, which fixes bugs:
  145.  
  146.               +o 448776: This fix addressed various panics in the
  147.                 specfs code due to a VN_RELE race in the common
  148.                 vnode handling.
  149.  
  150.               +o 455371: This was a bug in the specfs file system
  151.                 that caused a deadlock between specfs and the
  152.                 console driver, often seen during shutdown.
  153.  
  154.               +o 503045: This was a bug that manifested itself as
  155.                 speedshop core dumping when using /dev/zero.  The
  156.                 fix for this problem was incorporated into patch
  157.                 2294 which is now replaced by patch 2648, and also
  158.                 requires patch 2397 (or its replacement).
  159.  
  160.        Replaces and rolls up:
  161.  
  162.          Patch 1820, which fixes bugs:
  163.  
  164.               +o 426196: This was a bug in the specfs file system
  165.                 that caused ioconfig and xlv_assemble to take a
  166.                 very long time to run on systems with lots of
  167.                 disks.
  168.  
  169.        1.4  _S_u_b_s_y_s_t_e_m_s__I_n_c_l_u_d_e_d__i_n__P_a_t_c_h__S_G_0_0_0_2_8_3_5
  170.  
  171.        This patch release includes these subsystems:
  172.  
  173.           +o patchSG002835.eoe.sw.unix
  174.  
  175.  
  176.        1.5  _I_n_s_t_a_l_l_a_t_i_o_n__I_n_s_t_r_u_c_t_i_o_n_s
  177.  
  178.        Because you want to install only the patches for problems
  179.        you have encountered, patch software is not installed by
  180.        default.  After reading the descriptions of the bugs fixed
  181.        in this patch (see Section 1.3), determine the patches that
  182.        meet your specific needs.
  183.  
  184.        If, after reading Sections 1.1 and 1.2 of these release
  185.        notes, you are unsure whether your hardware and software
  186.        meet the requirements for installing a particular patch, run
  187.        _i_n_s_t.  The _i_n_s_t program does not allow you to install
  188.        patches that are incompatible with your hardware or
  189.        software.
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.                                   - 4 -
  203.  
  204.  
  205.  
  206.        Patch software is installed like any other Silicon Graphics
  207.        software product.  Follow the instructions in your _S_o_f_t_w_a_r_e
  208.        _I_n_s_t_a_l_l_a_t_i_o_n _A_d_m_i_n_i_s_t_r_a_t_o_r'_s _G_u_i_d_e to bring up the miniroot
  209.        form of the software installation tools.
  210.  
  211.        Follow these steps to select a patch for installation:
  212.  
  213.          1.  At the Inst> prompt, type
  214.  
  215.              iiiinnnnssssttttaaaallllllll ppppaaaattttcccchhhhSSSSGGGG_x_x_x_x_x_x_x
  216.  
  217.              where _x_x_x_x_x_x_x is the patch number.
  218.  
  219.          2.  Initiate the installation sequence. Type
  220.  
  221.              IIIInnnnsssstttt>>>> ggggoooo
  222.  
  223.          3.  You may find that two patches have been marked as
  224.              incompatible.  (The installation tools reject an
  225.              installation request if an incompatibility is
  226.              detected.)  If this occurs, you must deselect one of
  227.              the patches.
  228.  
  229.              IIIInnnnsssstttt>>>> kkkkeeeeeeeepppp ppppaaaattttcccchhhhSSSSGGGG_x_x_x_x_x_x_x
  230.  
  231.              where _x_x_x_x_x_x_x is the patch number.
  232.  
  233.          4.  After completing the installation process, exit the
  234.              _i_n_s_t program by typing
  235.  
  236.              IIIInnnnsssstttt>>>> qqqquuuuiiiitttt
  237.  
  238.  
  239.  
  240.        1.6  _P_a_t_c_h__R_e_m_o_v_a_l__I_n_s_t_r_u_c_t_i_o_n_s
  241.  
  242.        To remove a patch, use the _v_e_r_s_i_o_n_s _r_e_m_o_v_e command as you
  243.        would for any other software subsystem.  The removal process
  244.        reinstates the original version of software unless you have
  245.        specifically removed the patch history from your system.
  246.  
  247.        vvvveeeerrrrssssiiiioooonnnnssss rrrreeeemmmmoooovvvveeee ppppaaaattttcccchhhhSSSSGGGG_x_x_x_x_x_x_x
  248.  
  249.        where _x_x_x_x_x_x_x is the patch number.
  250.  
  251.        To keep a patch but increase your disk space, use the
  252.        _v_e_r_s_i_o_n_s _r_e_m_o_v_e_h_i_s_t command to remove the patch history.
  253.  
  254.        vvvveeeerrrrssssiiiioooonnnnssss rrrreeeemmmmoooovvvveeeehhhhiiiisssstttt ppppaaaattttcccchhhhSSSSGGGG_x_x_x_x_x_x_x
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.                                   - 5 -
  269.  
  270.  
  271.  
  272.        where _x_x_x_x_x_x_x is the patch number.
  273.  
  274.        1.7  _K_n_o_w_n__P_r_o_b_l_e_m_s
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.